package com.yuntai.pms.model.entity.handler;

import com.alibaba.fastjson.JSON;

import java.io.Serializable;
import java.util.Date;

/**
 * 服务注册信息
 * 
 * @author yxliang
 * @Description
 * @Date 2017年6月6日 上午11:27:29
 */
public class MethodRegisterInfo implements Serializable {
	private static final long serialVersionUID = -7643627728664316888L;
	private Long id;					// 自增长
	private String description; 		// 服务简单描述,
	private String dubboGroup;			// group的值
	private Date createTime; 			// 创建时间，默认当前时间
	private Date updateTime; 			// 更新时间，默认当前时间
	private Integer priority; 			// 服务优先级，默认为5，最低为1，最高10
	private Integer capability; 		// 服务最大容量，默认为1000，最少1
	private Integer connTimeout; 		// 服务超时时间，默认5s,不能超过60s
	private Integer readTimeout; 		// 服务读取时间，默认5s，不能超过60s
	private String version; 			// 服务注册的版本，默认可为空
	private String methodType;			// 是否是bean的handle处理，还是method中的相关函数处理
	private String method; 				// 由注册的调用地址，service（则是service的访问地址），method（则是service+methodname的访问地址）
	private String serverName;			// 资源服务器名，标识唯一业务资源服务器使用
	private String status;				// 资源状态，enable可用，disable不可用
	private String className;		//方法名称，包含类路径+类名
	private String apiDoc;			//api的文档

	
	public String getClassName() {
		return className;
	}

	public void setClassName(String className) {
		this.className = className;
	}

	public String getApiDoc() {
		return apiDoc;
	}

	public void setApiDoc(String apiDoc) {
		this.apiDoc = apiDoc;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}


	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getServerName() {
		return serverName;
	}

	public void setServerName(String serverName) {
		this.serverName = serverName;
	}

	public MethodRegisterInfo() {

	}

	public String getMethodType() {
		return methodType;
	}

	public void setMethodType(String methodType) {
		this.methodType = methodType;
	}

	public String getMethod() {
		return method;
	}

	public void setMethod(String method) {
		this.method = method;
	}

	public Integer getConnTimeout() {
		return connTimeout;
	}

	public void setConnTimeout(Integer connTimeout) {
		this.connTimeout = connTimeout;
	}

	public Integer getReadTimeout() {
		return readTimeout;
	}

	public void setReadTimeout(Integer readTimeout) {
		this.readTimeout = readTimeout;
	}

	public Integer getPriority() {
		return priority;
	}

	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	public Integer getCapability() {
		return capability;
	}

	public void setCapability(Integer capability) {
		this.capability = capability;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	

	public String getDubboGroup() {
		return dubboGroup;
	}

	public void setDubboGroup(String group) {
		this.dubboGroup = group;
	}

	public String getVersion() {
		return version;
	}

	public void setVersion(String version) {
		this.version = version;
	}
	
	@Override
	public String toString(){
		return JSON.toJSONString(this);
	}
}
